import ThemedImage from "@theme/ThemedImage";
import Since from "@site/src/components/since";

# Managing Local Server

<Since version="v1.8.2" />

<details>
<summary>touca server --help</summary>

```plaintext
usage: touca server [-h] {install,logs,status,upgrade,uninstall} ...

Install and manage your Touca server

positional arguments:
  {install,logs,status,upgrade,uninstall}
    install             Install and run a local instance of Touca server
    logs                Show touca server logs
    status              Show the status of a locally running instance of Touca server
    upgrade             Upgrade your local instance of Touca server to the latest version
    uninstall           Uninstall and remove your local instance of Touca server
```

</details>

<ThemedImage
  sources={{
    light: "https://touca.io/docs/external/assets/touca-cli-server.light.gif",
    dark: "https://touca.io/docs/external/assets/touca-cli-server.dark.gif"
  }}
/>

## Installing

`touca server install` let's you set up a local instance of Touca server using
`docker compose`. This subcommand interactively asks for the server installation
path. You can set this path using `--install-dir` option to disable runtime
interaction. We recommend using the default installation path `~/.touca/server`.

## Checking status

`touca server status` shows whether your local server instance is running. By
default, this subcommand assumes that the server is running on port 8080. You
can use `--port` to change this behavior.

## Reading the logs

`touca server logs` prints the last 1000 logs of the main Touca container on the
standard output. You can use `--follow` to stream the logs as they are produced.

## Upgrading

`touca server upgrade` helps you upgrade your local server instance to the
latest version without removing any stored data. This command pulls the latest
Docker images for the server and restarts any running containers.

## Uninstalling

`touca server uninstall` helps you cleanly uninstall your local server instance
and remove all its data from the installation directory. This subcommand may
prompt you for the server installation path if it does not find it installed in
the default installation directory `~/.touca/server`.
